//-------------------------------------------------------------------------------------------------------
// Copyright (C) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
//-------------------------------------------------------------------------------------------------------

function write(v) { WScript.Echo(v + ""); }

function foo() {}

write(undefined || undefined);
write(undefined || null);
write(undefined || true);
write(undefined || false);
write(undefined || Boolean(true));
write(undefined || Boolean(false));
write(undefined || new Boolean(true));
write(undefined || new Boolean(false));
write(undefined || NaN);
write(undefined || +0);
write(undefined || -0);
write(undefined || 0);
write(undefined || 0.0);
write(undefined || -0.0);
write(undefined || +0.0);
write(undefined || 1);
write(undefined || 10);
write(undefined || 10.0);
write(undefined || 10.1);
write(undefined || -1);
write(undefined || -10);
write(undefined || -10.0);
write(undefined || -10.1);
write(undefined || Number.MAX_VALUE);
write(undefined || Number.MIN_VALUE);
write(undefined || Number.NaN);
write(undefined || Number.POSITIVE_INFINITY);
write(undefined || Number.NEGATIVE_INFINITY);
write(undefined || new Number(NaN));
write(undefined || new Number(+0));
write(undefined || new Number(-0));
write(undefined || new Number(0));
write(undefined || new Number(0.0));
write(undefined || new Number(-0.0));
write(undefined || new Number(+0.0));
write(undefined || new Number(1));
write(undefined || new Number(10));
write(undefined || new Number(10.0));
write(undefined || new Number(10.1));
write(undefined || new Number(-1));
write(undefined || new Number(-10));
write(undefined || new Number(-10.0));
write(undefined || new Number(-10.1));
write(undefined || new Number(Number.MAX_VALUE));
write(undefined || new Number(Number.MIN_VALUE));
write(undefined || new Number(Number.NaN));
write(undefined || new Number(Number.POSITIVE_INFINITY));
write(undefined || new Number(Number.NEGATIVE_INFINITY));
write(undefined || '');
write(undefined || 0xa);
write(undefined || 04);
write(undefined || 'hello');
write(undefined || 'hel' + 'lo');
write(undefined || String(''));
write(undefined || String('hello'));
write(undefined || String('h' + 'ello'));
write(undefined || new String(''));
write(undefined || new String('hello'));
write(undefined || new String('he' + 'llo'));
write(undefined || new Object());
write(undefined || new Object());
write(undefined || [1, 2, 3]);
write(undefined || [1 ,2 , 3]);
write(undefined || new Array(3));
write(undefined || Array(3));
write(undefined || new Array(1 ,2 ,3));
write(undefined || Array(1));
write(undefined || foo);
write(null || undefined);
write(null || null);
write(null || true);
write(null || false);
write(null || Boolean(true));
write(null || Boolean(false));
write(null || new Boolean(true));
write(null || new Boolean(false));
write(null || NaN);
write(null || +0);
write(null || -0);
write(null || 0);
write(null || 0.0);
write(null || -0.0);
write(null || +0.0);
write(null || 1);
write(null || 10);
write(null || 10.0);
write(null || 10.1);
write(null || -1);
write(null || -10);
write(null || -10.0);
write(null || -10.1);
write(null || Number.MAX_VALUE);
write(null || Number.MIN_VALUE);
write(null || Number.NaN);
write(null || Number.POSITIVE_INFINITY);
write(null || Number.NEGATIVE_INFINITY);
write(null || new Number(NaN));
write(null || new Number(+0));
write(null || new Number(-0));
write(null || new Number(0));
write(null || new Number(0.0));
write(null || new Number(-0.0));
write(null || new Number(+0.0));
write(null || new Number(1));
write(null || new Number(10));
write(null || new Number(10.0));
write(null || new Number(10.1));
write(null || new Number(-1));
write(null || new Number(-10));
write(null || new Number(-10.0));
write(null || new Number(-10.1));
write(null || new Number(Number.MAX_VALUE));
write(null || new Number(Number.MIN_VALUE));
write(null || new Number(Number.NaN));
write(null || new Number(Number.POSITIVE_INFINITY));
write(null || new Number(Number.NEGATIVE_INFINITY));
write(null || '');
write(null || 0xa);
write(null || 04);
write(null || 'hello');
write(null || 'hel' + 'lo');
write(null || String(''));
write(null || String('hello'));
write(null || String('h' + 'ello'));
write(null || new String(''));
write(null || new String('hello'));
write(null || new String('he' + 'llo'));
write(null || new Object());
write(null || new Object());
write(null || [1, 2, 3]);
write(null || [1 ,2 , 3]);
write(null || new Array(3));
write(null || Array(3));
write(null || new Array(1 ,2 ,3));
write(null || Array(1));
write(null || foo);
write(true || undefined);
write(true || null);
write(true || true);
write(true || false);
write(true || Boolean(true));
write(true || Boolean(false));
write(true || new Boolean(true));
write(true || new Boolean(false));
write(true || NaN);
write(true || +0);
write(true || -0);
write(true || 0);
write(true || 0.0);
write(true || -0.0);
write(true || +0.0);
write(true || 1);
write(true || 10);
write(true || 10.0);
write(true || 10.1);
write(true || -1);
write(true || -10);
write(true || -10.0);
write(true || -10.1);
write(true || Number.MAX_VALUE);
write(true || Number.MIN_VALUE);
write(true || Number.NaN);
write(true || Number.POSITIVE_INFINITY);
write(true || Number.NEGATIVE_INFINITY);
write(true || new Number(NaN));
write(true || new Number(+0));
write(true || new Number(-0));
write(true || new Number(0));
write(true || new Number(0.0));
write(true || new Number(-0.0));
write(true || new Number(+0.0));
write(true || new Number(1));
write(true || new Number(10));
write(true || new Number(10.0));
write(true || new Number(10.1));
write(true || new Number(-1));
write(true || new Number(-10));
write(true || new Number(-10.0));
write(true || new Number(-10.1));
write(true || new Number(Number.MAX_VALUE));
write(true || new Number(Number.MIN_VALUE));
write(true || new Number(Number.NaN));
write(true || new Number(Number.POSITIVE_INFINITY));
write(true || new Number(Number.NEGATIVE_INFINITY));
write(true || '');
write(true || 0xa);
write(true || 04);
write(true || 'hello');
write(true || 'hel' + 'lo');
write(true || String(''));
write(true || String('hello'));
write(true || String('h' + 'ello'));
write(true || new String(''));
write(true || new String('hello'));
write(true || new String('he' + 'llo'));
write(true || new Object());
write(true || new Object());
write(true || [1, 2, 3]);
write(true || [1 ,2 , 3]);
write(true || new Array(3));
write(true || Array(3));
write(true || new Array(1 ,2 ,3));
write(true || Array(1));
write(true || foo);
write(false || undefined);
write(false || null);
write(false || true);
write(false || false);
write(false || Boolean(true));
write(false || Boolean(false));
write(false || new Boolean(true));
write(false || new Boolean(false));
write(false || NaN);
write(false || +0);
write(false || -0);
write(false || 0);
write(false || 0.0);
write(false || -0.0);
write(false || +0.0);
write(false || 1);
write(false || 10);
write(false || 10.0);
write(false || 10.1);
write(false || -1);
write(false || -10);
write(false || -10.0);
write(false || -10.1);
write(false || Number.MAX_VALUE);
write(false || Number.MIN_VALUE);
write(false || Number.NaN);
write(false || Number.POSITIVE_INFINITY);
write(false || Number.NEGATIVE_INFINITY);
write(false || new Number(NaN));
write(false || new Number(+0));
write(false || new Number(-0));
write(false || new Number(0));
write(false || new Number(0.0));
write(false || new Number(-0.0));
write(false || new Number(+0.0));
write(false || new Number(1));
write(false || new Number(10));
write(false || new Number(10.0));
write(false || new Number(10.1));
write(false || new Number(-1));
write(false || new Number(-10));
write(false || new Number(-10.0));
write(false || new Number(-10.1));
write(false || new Number(Number.MAX_VALUE));
write(false || new Number(Number.MIN_VALUE));
write(false || new Number(Number.NaN));
write(false || new Number(Number.POSITIVE_INFINITY));
write(false || new Number(Number.NEGATIVE_INFINITY));
write(false || '');
write(false || 0xa);
write(false || 04);
write(false || 'hello');
write(false || 'hel' + 'lo');
write(false || String(''));
write(false || String('hello'));
write(false || String('h' + 'ello'));
write(false || new String(''));
write(false || new String('hello'));
write(false || new String('he' + 'llo'));
write(false || new Object());
write(false || new Object());
write(false || [1, 2, 3]);
write(false || [1 ,2 , 3]);
write(false || new Array(3));
write(false || Array(3));
write(false || new Array(1 ,2 ,3));
write(false || Array(1));
write(false || foo);
write(Boolean(true) || undefined);
write(Boolean(true) || null);
write(Boolean(true) || true);
write(Boolean(true) || false);
write(Boolean(true) || Boolean(true));
write(Boolean(true) || Boolean(false));
write(Boolean(true) || new Boolean(true));
write(Boolean(true) || new Boolean(false));
write(Boolean(true) || NaN);
write(Boolean(true) || +0);
write(Boolean(true) || -0);
write(Boolean(true) || 0);
write(Boolean(true) || 0.0);
write(Boolean(true) || -0.0);
write(Boolean(true) || +0.0);
write(Boolean(true) || 1);
write(Boolean(true) || 10);
write(Boolean(true) || 10.0);
write(Boolean(true) || 10.1);
write(Boolean(true) || -1);
write(Boolean(true) || -10);
write(Boolean(true) || -10.0);
write(Boolean(true) || -10.1);
write(Boolean(true) || Number.MAX_VALUE);
write(Boolean(true) || Number.MIN_VALUE);
write(Boolean(true) || Number.NaN);
write(Boolean(true) || Number.POSITIVE_INFINITY);
write(Boolean(true) || Number.NEGATIVE_INFINITY);
write(Boolean(true) || new Number(NaN));
write(Boolean(true) || new Number(+0));
write(Boolean(true) || new Number(-0));
write(Boolean(true) || new Number(0));
write(Boolean(true) || new Number(0.0));
write(Boolean(true) || new Number(-0.0));
write(Boolean(true) || new Number(+0.0));
write(Boolean(true) || new Number(1));
write(Boolean(true) || new Number(10));
write(Boolean(true) || new Number(10.0));
write(Boolean(true) || new Number(10.1));
write(Boolean(true) || new Number(-1));
write(Boolean(true) || new Number(-10));
write(Boolean(true) || new Number(-10.0));
write(Boolean(true) || new Number(-10.1));
write(Boolean(true) || new Number(Number.MAX_VALUE));
write(Boolean(true) || new Number(Number.MIN_VALUE));
write(Boolean(true) || new Number(Number.NaN));
write(Boolean(true) || new Number(Number.POSITIVE_INFINITY));
write(Boolean(true) || new Number(Number.NEGATIVE_INFINITY));
write(Boolean(true) || '');
write(Boolean(true) || 0xa);
write(Boolean(true) || 04);
write(Boolean(true) || 'hello');
write(Boolean(true) || 'hel' + 'lo');
write(Boolean(true) || String(''));
write(Boolean(true) || String('hello'));
write(Boolean(true) || String('h' + 'ello'));
write(Boolean(true) || new String(''));
write(Boolean(true) || new String('hello'));
write(Boolean(true) || new String('he' + 'llo'));
write(Boolean(true) || new Object());
write(Boolean(true) || new Object());
write(Boolean(true) || [1, 2, 3]);
write(Boolean(true) || [1 ,2 , 3]);
write(Boolean(true) || new Array(3));
write(Boolean(true) || Array(3));
write(Boolean(true) || new Array(1 ,2 ,3));
write(Boolean(true) || Array(1));
write(Boolean(true) || foo);
write(Boolean(false) || undefined);
write(Boolean(false) || null);
write(Boolean(false) || true);
write(Boolean(false) || false);
write(Boolean(false) || Boolean(true));
write(Boolean(false) || Boolean(false));
write(Boolean(false) || new Boolean(true));
write(Boolean(false) || new Boolean(false));
write(Boolean(false) || NaN);
write(Boolean(false) || +0);
write(Boolean(false) || -0);
write(Boolean(false) || 0);
write(Boolean(false) || 0.0);
write(Boolean(false) || -0.0);
write(Boolean(false) || +0.0);
write(Boolean(false) || 1);
write(Boolean(false) || 10);
write(Boolean(false) || 10.0);
write(Boolean(false) || 10.1);
write(Boolean(false) || -1);
write(Boolean(false) || -10);
write(Boolean(false) || -10.0);
write(Boolean(false) || -10.1);
write(Boolean(false) || Number.MAX_VALUE);
write(Boolean(false) || Number.MIN_VALUE);
write(Boolean(false) || Number.NaN);
write(Boolean(false) || Number.POSITIVE_INFINITY);
write(Boolean(false) || Number.NEGATIVE_INFINITY);
write(Boolean(false) || new Number(NaN));
write(Boolean(false) || new Number(+0));
write(Boolean(false) || new Number(-0));
write(Boolean(false) || new Number(0));
write(Boolean(false) || new Number(0.0));
write(Boolean(false) || new Number(-0.0));
write(Boolean(false) || new Number(+0.0));
write(Boolean(false) || new Number(1));
write(Boolean(false) || new Number(10));
write(Boolean(false) || new Number(10.0));
write(Boolean(false) || new Number(10.1));
write(Boolean(false) || new Number(-1));
write(Boolean(false) || new Number(-10));
write(Boolean(false) || new Number(-10.0));
write(Boolean(false) || new Number(-10.1));
write(Boolean(false) || new Number(Number.MAX_VALUE));
write(Boolean(false) || new Number(Number.MIN_VALUE));
write(Boolean(false) || new Number(Number.NaN));
write(Boolean(false) || new Number(Number.POSITIVE_INFINITY));
write(Boolean(false) || new Number(Number.NEGATIVE_INFINITY));
write(Boolean(false) || '');
write(Boolean(false) || 0xa);
write(Boolean(false) || 04);
write(Boolean(false) || 'hello');
write(Boolean(false) || 'hel' + 'lo');
write(Boolean(false) || String(''));
write(Boolean(false) || String('hello'));
write(Boolean(false) || String('h' + 'ello'));
write(Boolean(false) || new String(''));
write(Boolean(false) || new String('hello'));
write(Boolean(false) || new String('he' + 'llo'));
write(Boolean(false) || new Object());
write(Boolean(false) || new Object());
write(Boolean(false) || [1, 2, 3]);
write(Boolean(false) || [1 ,2 , 3]);
write(Boolean(false) || new Array(3));
write(Boolean(false) || Array(3));
write(Boolean(false) || new Array(1 ,2 ,3));
write(Boolean(false) || Array(1));
write(Boolean(false) || foo);
write(new Boolean(true) || undefined);
write(new Boolean(true) || null);
write(new Boolean(true) || true);
write(new Boolean(true) || false);
write(new Boolean(true) || Boolean(true));
write(new Boolean(true) || Boolean(false));
write(new Boolean(true) || new Boolean(true));
write(new Boolean(true) || new Boolean(false));
write(new Boolean(true) || NaN);
write(new Boolean(true) || +0);
write(new Boolean(true) || -0);
write(new Boolean(true) || 0);
write(new Boolean(true) || 0.0);
write(new Boolean(true) || -0.0);
write(new Boolean(true) || +0.0);
write(new Boolean(true) || 1);
write(new Boolean(true) || 10);
write(new Boolean(true) || 10.0);
write(new Boolean(true) || 10.1);
write(new Boolean(true) || -1);
write(new Boolean(true) || -10);
write(new Boolean(true) || -10.0);
write(new Boolean(true) || -10.1);
write(new Boolean(true) || Number.MAX_VALUE);
write(new Boolean(true) || Number.MIN_VALUE);
write(new Boolean(true) || Number.NaN);
write(new Boolean(true) || Number.POSITIVE_INFINITY);
write(new Boolean(true) || Number.NEGATIVE_INFINITY);
write(new Boolean(true) || new Number(NaN));
write(new Boolean(true) || new Number(+0));
write(new Boolean(true) || new Number(-0));
write(new Boolean(true) || new Number(0));
write(new Boolean(true) || new Number(0.0));
write(new Boolean(true) || new Number(-0.0));
write(new Boolean(true) || new Number(+0.0));
write(new Boolean(true) || new Number(1));
write(new Boolean(true) || new Number(10));
write(new Boolean(true) || new Number(10.0));
write(new Boolean(true) || new Number(10.1));
write(new Boolean(true) || new Number(-1));
write(new Boolean(true) || new Number(-10));
write(new Boolean(true) || new Number(-10.0));
write(new Boolean(true) || new Number(-10.1));
write(new Boolean(true) || new Number(Number.MAX_VALUE));
write(new Boolean(true) || new Number(Number.MIN_VALUE));
write(new Boolean(true) || new Number(Number.NaN));
write(new Boolean(true) || new Number(Number.POSITIVE_INFINITY));
write(new Boolean(true) || new Number(Number.NEGATIVE_INFINITY));
write(new Boolean(true) || '');
write(new Boolean(true) || 0xa);
write(new Boolean(true) || 04);
write(new Boolean(true) || 'hello');
write(new Boolean(true) || 'hel' + 'lo');
write(new Boolean(true) || String(''));
write(new Boolean(true) || String('hello'));
write(new Boolean(true) || String('h' + 'ello'));
write(new Boolean(true) || new String(''));
write(new Boolean(true) || new String('hello'));
write(new Boolean(true) || new String('he' + 'llo'));
write(new Boolean(true) || new Object());
write(new Boolean(true) || new Object());
write(new Boolean(true) || [1, 2, 3]);
write(new Boolean(true) || [1 ,2 , 3]);
write(new Boolean(true) || new Array(3));
write(new Boolean(true) || Array(3));
write(new Boolean(true) || new Array(1 ,2 ,3));
write(new Boolean(true) || Array(1));
write(new Boolean(true) || foo);
write(new Boolean(false) || undefined);
write(new Boolean(false) || null);
write(new Boolean(false) || true);
write(new Boolean(false) || false);
write(new Boolean(false) || Boolean(true));
write(new Boolean(false) || Boolean(false));
write(new Boolean(false) || new Boolean(true));
write(new Boolean(false) || new Boolean(false));
write(new Boolean(false) || NaN);
write(new Boolean(false) || +0);
write(new Boolean(false) || -0);
write(new Boolean(false) || 0);
write(new Boolean(false) || 0.0);
write(new Boolean(false) || -0.0);
write(new Boolean(false) || +0.0);
write(new Boolean(false) || 1);
write(new Boolean(false) || 10);
write(new Boolean(false) || 10.0);
write(new Boolean(false) || 10.1);
write(new Boolean(false) || -1);
write(new Boolean(false) || -10);
write(new Boolean(false) || -10.0);
write(new Boolean(false) || -10.1);
write(new Boolean(false) || Number.MAX_VALUE);
write(new Boolean(false) || Number.MIN_VALUE);
write(new Boolean(false) || Number.NaN);
write(new Boolean(false) || Number.POSITIVE_INFINITY);
write(new Boolean(false) || Number.NEGATIVE_INFINITY);
write(new Boolean(false) || new Number(NaN));
write(new Boolean(false) || new Number(+0));
write(new Boolean(false) || new Number(-0));
write(new Boolean(false) || new Number(0));
write(new Boolean(false) || new Number(0.0));
write(new Boolean(false) || new Number(-0.0));
write(new Boolean(false) || new Number(+0.0));
write(new Boolean(false) || new Number(1));
write(new Boolean(false) || new Number(10));
write(new Boolean(false) || new Number(10.0));
write(new Boolean(false) || new Number(10.1));
write(new Boolean(false) || new Number(-1));
write(new Boolean(false) || new Number(-10));
write(new Boolean(false) || new Number(-10.0));
write(new Boolean(false) || new Number(-10.1));
write(new Boolean(false) || new Number(Number.MAX_VALUE));
write(new Boolean(false) || new Number(Number.MIN_VALUE));
write(new Boolean(false) || new Number(Number.NaN));
write(new Boolean(false) || new Number(Number.POSITIVE_INFINITY));
write(new Boolean(false) || new Number(Number.NEGATIVE_INFINITY));
write(new Boolean(false) || '');
write(new Boolean(false) || 0xa);
write(new Boolean(false) || 04);
write(new Boolean(false) || 'hello');
write(new Boolean(false) || 'hel' + 'lo');
write(new Boolean(false) || String(''));
write(new Boolean(false) || String('hello'));
write(new Boolean(false) || String('h' + 'ello'));
write(new Boolean(false) || new String(''));
write(new Boolean(false) || new String('hello'));
write(new Boolean(false) || new String('he' + 'llo'));
write(new Boolean(false) || new Object());
write(new Boolean(false) || new Object());
write(new Boolean(false) || [1, 2, 3]);
write(new Boolean(false) || [1 ,2 , 3]);
write(new Boolean(false) || new Array(3));
write(new Boolean(false) || Array(3));
write(new Boolean(false) || new Array(1 ,2 ,3));
write(new Boolean(false) || Array(1));
write(new Boolean(false) || foo);
write(NaN || undefined);
write(NaN || null);
write(NaN || true);
write(NaN || false);
write(NaN || Boolean(true));
write(NaN || Boolean(false));
write(NaN || new Boolean(true));
write(NaN || new Boolean(false));
write(NaN || NaN);
write(NaN || +0);
write(NaN || -0);
write(NaN || 0);
write(NaN || 0.0);
write(NaN || -0.0);
write(NaN || +0.0);
write(NaN || 1);
write(NaN || 10);
write(NaN || 10.0);
write(NaN || 10.1);
write(NaN || -1);
write(NaN || -10);
write(NaN || -10.0);
write(NaN || -10.1);
write(NaN || Number.MAX_VALUE);
write(NaN || Number.MIN_VALUE);
write(NaN || Number.NaN);
write(NaN || Number.POSITIVE_INFINITY);
write(NaN || Number.NEGATIVE_INFINITY);
write(NaN || new Number(NaN));
write(NaN || new Number(+0));
write(NaN || new Number(-0));
write(NaN || new Number(0));
write(NaN || new Number(0.0));
write(NaN || new Number(-0.0));
write(NaN || new Number(+0.0));
write(NaN || new Number(1));
write(NaN || new Number(10));
write(NaN || new Number(10.0));
write(NaN || new Number(10.1));
write(NaN || new Number(-1));
write(NaN || new Number(-10));
write(NaN || new Number(-10.0));
write(NaN || new Number(-10.1));
write(NaN || new Number(Number.MAX_VALUE));
write(NaN || new Number(Number.MIN_VALUE));
write(NaN || new Number(Number.NaN));
write(NaN || new Number(Number.POSITIVE_INFINITY));
write(NaN || new Number(Number.NEGATIVE_INFINITY));
write(NaN || '');
write(NaN || 0xa);
write(NaN || 04);
write(NaN || 'hello');
write(NaN || 'hel' + 'lo');
write(NaN || String(''));
write(NaN || String('hello'));
write(NaN || String('h' + 'ello'));
write(NaN || new String(''));
write(NaN || new String('hello'));
write(NaN || new String('he' + 'llo'));
write(NaN || new Object());
write(NaN || new Object());
write(NaN || [1, 2, 3]);
write(NaN || [1 ,2 , 3]);
write(NaN || new Array(3));
write(NaN || Array(3));
write(NaN || new Array(1 ,2 ,3));
write(NaN || Array(1));
write(NaN || foo);
write(+0 || undefined);
write(+0 || null);
write(+0 || true);
write(+0 || false);
write(+0 || Boolean(true));
write(+0 || Boolean(false));
write(+0 || new Boolean(true));
write(+0 || new Boolean(false));
write(+0 || NaN);
write(+0 || +0);
write(+0 || -0);
write(+0 || 0);
write(+0 || 0.0);
write(+0 || -0.0);
write(+0 || +0.0);
write(+0 || 1);
write(+0 || 10);
write(+0 || 10.0);
write(+0 || 10.1);
write(+0 || -1);
write(+0 || -10);
write(+0 || -10.0);
write(+0 || -10.1);
write(+0 || Number.MAX_VALUE);
write(+0 || Number.MIN_VALUE);
write(+0 || Number.NaN);
write(+0 || Number.POSITIVE_INFINITY);
write(+0 || Number.NEGATIVE_INFINITY);
write(+0 || new Number(NaN));
write(+0 || new Number(+0));
write(+0 || new Number(-0));
write(+0 || new Number(0));
write(+0 || new Number(0.0));
write(+0 || new Number(-0.0));
write(+0 || new Number(+0.0));
write(+0 || new Number(1));
write(+0 || new Number(10));
write(+0 || new Number(10.0));
write(+0 || new Number(10.1));
write(+0 || new Number(-1));
write(+0 || new Number(-10));
write(+0 || new Number(-10.0));
write(+0 || new Number(-10.1));
write(+0 || new Number(Number.MAX_VALUE));
write(+0 || new Number(Number.MIN_VALUE));
write(+0 || new Number(Number.NaN));
write(+0 || new Number(Number.POSITIVE_INFINITY));
write(+0 || new Number(Number.NEGATIVE_INFINITY));
write(+0 || '');
write(+0 || 0xa);
write(+0 || 04);
write(+0 || 'hello');
write(+0 || 'hel' + 'lo');
write(+0 || String(''));
write(+0 || String('hello'));
write(+0 || String('h' + 'ello'));
write(+0 || new String(''));
write(+0 || new String('hello'));
write(+0 || new String('he' + 'llo'));
write(+0 || new Object());
write(+0 || new Object());
write(+0 || [1, 2, 3]);
write(+0 || [1 ,2 , 3]);
write(+0 || new Array(3));
write(+0 || Array(3));
write(+0 || new Array(1 ,2 ,3));
write(+0 || Array(1));
write(+0 || foo);
write(-0 || undefined);
write(-0 || null);
write(-0 || true);
write(-0 || false);
write(-0 || Boolean(true));
write(-0 || Boolean(false));
write(-0 || new Boolean(true));
write(-0 || new Boolean(false));
write(-0 || NaN);
write(-0 || +0);
write(-0 || -0);
write(-0 || 0);
write(-0 || 0.0);
write(-0 || -0.0);
write(-0 || +0.0);
write(-0 || 1);
write(-0 || 10);
write(-0 || 10.0);
write(-0 || 10.1);
write(-0 || -1);
write(-0 || -10);
write(-0 || -10.0);
write(-0 || -10.1);
write(-0 || Number.MAX_VALUE);
write(-0 || Number.MIN_VALUE);
write(-0 || Number.NaN);
write(-0 || Number.POSITIVE_INFINITY);
write(-0 || Number.NEGATIVE_INFINITY);
write(-0 || new Number(NaN));
write(-0 || new Number(+0));
write(-0 || new Number(-0));
write(-0 || new Number(0));
write(-0 || new Number(0.0));
write(-0 || new Number(-0.0));
write(-0 || new Number(+0.0));
write(-0 || new Number(1));
write(-0 || new Number(10));
write(-0 || new Number(10.0));
write(-0 || new Number(10.1));
write(-0 || new Number(-1));
write(-0 || new Number(-10));
write(-0 || new Number(-10.0));
write(-0 || new Number(-10.1));
write(-0 || new Number(Number.MAX_VALUE));
write(-0 || new Number(Number.MIN_VALUE));
write(-0 || new Number(Number.NaN));
write(-0 || new Number(Number.POSITIVE_INFINITY));
write(-0 || new Number(Number.NEGATIVE_INFINITY));
write(-0 || '');
write(-0 || 0xa);
write(-0 || 04);
write(-0 || 'hello');
write(-0 || 'hel' + 'lo');
write(-0 || String(''));
write(-0 || String('hello'));
write(-0 || String('h' + 'ello'));
write(-0 || new String(''));
write(-0 || new String('hello'));
write(-0 || new String('he' + 'llo'));
write(-0 || new Object());
write(-0 || new Object());
write(-0 || [1, 2, 3]);
write(-0 || [1 ,2 , 3]);
write(-0 || new Array(3));
write(-0 || Array(3));
write(-0 || new Array(1 ,2 ,3));
write(-0 || Array(1));
write(-0 || foo);
write(0 || undefined);
write(0 || null);
write(0 || true);
write(0 || false);
write(0 || Boolean(true));
write(0 || Boolean(false));
write(0 || new Boolean(true));
write(0 || new Boolean(false));
write(0 || NaN);
write(0 || +0);
write(0 || -0);
write(0 || 0);
write(0 || 0.0);
write(0 || -0.0);
write(0 || +0.0);
write(0 || 1);
write(0 || 10);
write(0 || 10.0);
write(0 || 10.1);
write(0 || -1);
write(0 || -10);
write(0 || -10.0);
write(0 || -10.1);
write(0 || Number.MAX_VALUE);
write(0 || Number.MIN_VALUE);
write(0 || Number.NaN);
write(0 || Number.POSITIVE_INFINITY);
write(0 || Number.NEGATIVE_INFINITY);
write(0 || new Number(NaN));
write(0 || new Number(+0));
write(0 || new Number(-0));
write(0 || new Number(0));
write(0 || new Number(0.0));
write(0 || new Number(-0.0));
write(0 || new Number(+0.0));
write(0 || new Number(1));
write(0 || new Number(10));
write(0 || new Number(10.0));
write(0 || new Number(10.1));
write(0 || new Number(-1));
write(0 || new Number(-10));
write(0 || new Number(-10.0));
write(0 || new Number(-10.1));
write(0 || new Number(Number.MAX_VALUE));
write(0 || new Number(Number.MIN_VALUE));
write(0 || new Number(Number.NaN));
write(0 || new Number(Number.POSITIVE_INFINITY));
write(0 || new Number(Number.NEGATIVE_INFINITY));
write(0 || '');
write(0 || 0xa);
write(0 || 04);
write(0 || 'hello');
write(0 || 'hel' + 'lo');
write(0 || String(''));
write(0 || String('hello'));
write(0 || String('h' + 'ello'));
write(0 || new String(''));
write(0 || new String('hello'));
write(0 || new String('he' + 'llo'));
write(0 || new Object());
write(0 || new Object());
write(0 || [1, 2, 3]);
write(0 || [1 ,2 , 3]);
write(0 || new Array(3));
write(0 || Array(3));
write(0 || new Array(1 ,2 ,3));
write(0 || Array(1));
write(0 || foo);
write(0.0 || undefined);
write(0.0 || null);
write(0.0 || true);
write(0.0 || false);
write(0.0 || Boolean(true));
write(0.0 || Boolean(false));
write(0.0 || new Boolean(true));
write(0.0 || new Boolean(false));
write(0.0 || NaN);
write(0.0 || +0);
write(0.0 || -0);
write(0.0 || 0);
write(0.0 || 0.0);
write(0.0 || -0.0);
write(0.0 || +0.0);
write(0.0 || 1);
write(0.0 || 10);
write(0.0 || 10.0);
write(0.0 || 10.1);
write(0.0 || -1);
write(0.0 || -10);
write(0.0 || -10.0);
write(0.0 || -10.1);
write(0.0 || Number.MAX_VALUE);
write(0.0 || Number.MIN_VALUE);
write(0.0 || Number.NaN);
write(0.0 || Number.POSITIVE_INFINITY);
write(0.0 || Number.NEGATIVE_INFINITY);
write(0.0 || new Number(NaN));
write(0.0 || new Number(+0));
write(0.0 || new Number(-0));
write(0.0 || new Number(0));
write(0.0 || new Number(0.0));
write(0.0 || new Number(-0.0));
write(0.0 || new Number(+0.0));
write(0.0 || new Number(1));
write(0.0 || new Number(10));
write(0.0 || new Number(10.0));
write(0.0 || new Number(10.1));
write(0.0 || new Number(-1));
write(0.0 || new Number(-10));
write(0.0 || new Number(-10.0));
write(0.0 || new Number(-10.1));
write(0.0 || new Number(Number.MAX_VALUE));
write(0.0 || new Number(Number.MIN_VALUE));
write(0.0 || new Number(Number.NaN));
write(0.0 || new Number(Number.POSITIVE_INFINITY));
write(0.0 || new Number(Number.NEGATIVE_INFINITY));
write(0.0 || '');
write(0.0 || 0xa);
write(0.0 || 04);
write(0.0 || 'hello');
write(0.0 || 'hel' + 'lo');
write(0.0 || String(''));
write(0.0 || String('hello'));
write(0.0 || String('h' + 'ello'));
write(0.0 || new String(''));
write(0.0 || new String('hello'));
write(0.0 || new String('he' + 'llo'));
write(0.0 || new Object());
write(0.0 || new Object());
write(0.0 || [1, 2, 3]);
write(0.0 || [1 ,2 , 3]);
write(0.0 || new Array(3));
write(0.0 || Array(3));
write(0.0 || new Array(1 ,2 ,3));
write(0.0 || Array(1));
write(0.0 || foo);
write(-0.0 || undefined);
write(-0.0 || null);
write(-0.0 || true);
write(-0.0 || false);
write(-0.0 || Boolean(true));
write(-0.0 || Boolean(false));
write(-0.0 || new Boolean(true));
write(-0.0 || new Boolean(false));
write(-0.0 || NaN);
write(-0.0 || +0);
write(-0.0 || -0);
write(-0.0 || 0);
write(-0.0 || 0.0);
write(-0.0 || -0.0);
write(-0.0 || +0.0);
write(-0.0 || 1);
write(-0.0 || 10);
write(-0.0 || 10.0);
write(-0.0 || 10.1);
write(-0.0 || -1);
write(-0.0 || -10);
write(-0.0 || -10.0);
write(-0.0 || -10.1);
write(-0.0 || Number.MAX_VALUE);
write(-0.0 || Number.MIN_VALUE);
write(-0.0 || Number.NaN);
write(-0.0 || Number.POSITIVE_INFINITY);
write(-0.0 || Number.NEGATIVE_INFINITY);
write(-0.0 || new Number(NaN));
write(-0.0 || new Number(+0));
write(-0.0 || new Number(-0));
write(-0.0 || new Number(0));
write(-0.0 || new Number(0.0));
write(-0.0 || new Number(-0.0));
write(-0.0 || new Number(+0.0));
write(-0.0 || new Number(1));
write(-0.0 || new Number(10));
write(-0.0 || new Number(10.0));
write(-0.0 || new Number(10.1));
write(-0.0 || new Number(-1));
write(-0.0 || new Number(-10));
write(-0.0 || new Number(-10.0));
write(-0.0 || new Number(-10.1));
write(-0.0 || new Number(Number.MAX_VALUE));
write(-0.0 || new Number(Number.MIN_VALUE));
write(-0.0 || new Number(Number.NaN));
write(-0.0 || new Number(Number.POSITIVE_INFINITY));
write(-0.0 || new Number(Number.NEGATIVE_INFINITY));
write(-0.0 || '');
write(-0.0 || 0xa);
write(-0.0 || 04);
write(-0.0 || 'hello');
write(-0.0 || 'hel' + 'lo');
write(-0.0 || String(''));
write(-0.0 || String('hello'));
write(-0.0 || String('h' + 'ello'));
write(-0.0 || new String(''));
write(-0.0 || new String('hello'));
write(-0.0 || new String('he' + 'llo'));
write(-0.0 || new Object());
write(-0.0 || new Object());
write(-0.0 || [1, 2, 3]);
write(-0.0 || [1 ,2 , 3]);
write(-0.0 || new Array(3));
write(-0.0 || Array(3));
write(-0.0 || new Array(1 ,2 ,3));
write(-0.0 || Array(1));
write(-0.0 || foo);
write(+0.0 || undefined);
write(+0.0 || null);
write(+0.0 || true);
write(+0.0 || false);
write(+0.0 || Boolean(true));
write(+0.0 || Boolean(false));
write(+0.0 || new Boolean(true));
write(+0.0 || new Boolean(false));
write(+0.0 || NaN);
write(+0.0 || +0);
write(+0.0 || -0);
write(+0.0 || 0);
write(+0.0 || 0.0);
write(+0.0 || -0.0);
write(+0.0 || +0.0);
write(+0.0 || 1);
write(+0.0 || 10);
write(+0.0 || 10.0);
write(+0.0 || 10.1);
write(+0.0 || -1);
write(+0.0 || -10);
write(+0.0 || -10.0);
write(+0.0 || -10.1);
write(+0.0 || Number.MAX_VALUE);
write(+0.0 || Number.MIN_VALUE);
write(+0.0 || Number.NaN);
write(+0.0 || Number.POSITIVE_INFINITY);
write(+0.0 || Number.NEGATIVE_INFINITY);
write(+0.0 || new Number(NaN));
write(+0.0 || new Number(+0));
write(+0.0 || new Number(-0));
write(+0.0 || new Number(0));
write(+0.0 || new Number(0.0));
write(+0.0 || new Number(-0.0));
write(+0.0 || new Number(+0.0));
write(+0.0 || new Number(1));
write(+0.0 || new Number(10));
write(+0.0 || new Number(10.0));
write(+0.0 || new Number(10.1));
write(+0.0 || new Number(-1));
write(+0.0 || new Number(-10));
write(+0.0 || new Number(-10.0));
write(+0.0 || new Number(-10.1));
write(+0.0 || new Number(Number.MAX_VALUE));
write(+0.0 || new Number(Number.MIN_VALUE));
write(+0.0 || new Number(Number.NaN));
write(+0.0 || new Number(Number.POSITIVE_INFINITY));
write(+0.0 || new Number(Number.NEGATIVE_INFINITY));
